#ifndef SINGLE_H
#define SINGLE_H

#include "board.h"
#include "step.h"

class Single : public Board
{
    Q_OBJECT
public:
    explicit Single(QWidget *parent = 0);
    ~Single();


    //思考步数——水平
    int level;

    //虚函数
    virtual void player_move(QPoint p);


    void all_move(QVector<Step *> &steps);

    int calc_score();

    void step_move(Step *step);
    void step_back(Step *step);

    int max_score(int lvl_min, int lvl);
    int min_score(int lvl_max, int lvl);

    Step *best_move();

public slots:
    void computer_move();
};

#endif // SINGLE_H
